# Contributor: Jakub Jirutka <jakub@jirutka.cz>
# Maintainer:
pkgname=ocaml-lambda-term
_pkgname=lambda-term
pkgver=1.13
pkgrel=1
pkgdesc="Terminal manipulation library for OCaml"
url="https://github.com/diml/lambda-term"
# x86, armhf, s390x, mips, mips64: limited by ocaml aport
arch="all !x86 !armhf !armv7 !s390x !mips !mips64"
license="BSD-3-Clause"
depends="ocaml-camomile ocaml-lwt ocaml-lwt_react ocaml-lwt_log ocaml-zed"
makedepends="
	dune
	ocaml
	ocaml-camomile-dev
	ocaml-lwt-dev
	ocaml-lwt_log-dev
	ocaml-findlib
	ocaml-react-dev
	ocaml-result-dev
	ocaml-zed-dev
	opam
	"
subpackages="$pkgname-dev $pkgname-doc"
source="$pkgname-$pkgver.tar.bz2::https://github.com/diml/$_pkgname/releases/download/$pkgver/$_pkgname-$pkgver.tbz"
builddir="$srcdir/$_pkgname-$pkgver"

build() {
	cd "$builddir"
	jbuilder build @install
}

check() {
	cd "$builddir"
	jbuilder runtest
}

package() {
	cd "$builddir"

	opam-installer -i \
		--prefix="$pkgdir/usr" \
		--libdir="$pkgdir/usr/lib/ocaml" \
		--docdir="$pkgdir/doc" \
		--mandir="$pkgdir/usr/share/man" \
		$_pkgname.install

	# There's just a readme and changelog.
	rm -Rf "$pkgdir"/doc

	# Remove annotation files and sources.
	cd "$pkgdir"/usr/lib/ocaml/$_pkgname
	rm -f *.cmt* *.ml
}

dev() {
	default_dev
	depends="$pkgname=$pkgver-r$pkgrel"
	local sitelib="usr/lib/ocaml/$_pkgname"

	cd "$pkgdir"/$sitelib

	mkdir -p "$subpkgdir"/$sitelib
	mv *.cmx *.cmxa *.mli "$subpkgdir"/$sitelib/
}

sha512sums="79efc40653e74eb27181b260bc0096238854eb72a61b59c3de3740b01399d9fefa35c0f978d48bbf8097647b6324651207ade022572ef06b460b7b1b001b0dc7  ocaml-lambda-term-1.13.tar.bz2"
